package vfs.obj.entity;

/**
 * A VFSNodeType represents the type of a virtual node in the system.
 * It should correspond to the type of the external file that the node
 * references, if any.
 * 
 * @author Matthew Eavenson <durandal@uga.edu>
 */
public interface VFSNodeType extends VFSEntity{
    
    /**
     * Returns this node type's name.
     * 
     * @return this node type's name
     */
    String getName();
    
    /**
     * Sets this node type's name.
     * 
     * @param name the name to assign to this node type
     */
    void   setName(String name);
    
    /**
     * Returns this node type's description.  This could
     * be useful for certain obscure file formats.
     * 
     * @return this node type's description
     */
    String getDescription();
    
    /**
     * Sets this node type's description.  This could be
     * useful for certain obscure file formats.
     * 
     * @param description the description to assign to this node type
     */
    void   setDescription(String description);
    
}
